package com.EAIPClub.UserAuthDataManager.service;

import com.api.POJO.UserAuthDataManager.AllUserAuthDataReturnMsg;
import com.api.POJO.UserAuthDataManager.UserAuthData;
import com.api.POJO.UserAuthDataManager.UserAuthDataManagerReturnMsg;

/**
 * @Description :用户登录信息管理模块业务逻辑层接口
 * @Author :崔昌赫
 * @Date : 2021/10/20
 */
public interface UserAuthDataManagerService {
    UserAuthDataManagerReturnMsg addNewUserAuthData(UserAuthData authData);

    AllUserAuthDataReturnMsg getAllUserAuthData();

    UserAuthDataManagerReturnMsg getUserAuthDataByUid(String uid);
    UserAuthDataManagerReturnMsg getUserAuthDataByToken(String token);
    UserAuthDataManagerReturnMsg getUserAuthDataByDate(String date);
    UserAuthDataManagerReturnMsg getUserAuthDataByExpiration(String expiration);
    
    UserAuthDataManagerReturnMsg updateUserAuthDataByUid(String uid, UserAuthData userAuthData);
    UserAuthDataManagerReturnMsg updateUserAuthDataByToken(String token, UserAuthData userAuthData);
    UserAuthDataManagerReturnMsg updateUserAuthDataByDate(String date, UserAuthData userAuthData);
    UserAuthDataManagerReturnMsg updateUserAuthDataByExpiration(String expiration, UserAuthData userAuthData);
    
    UserAuthDataManagerReturnMsg deleteUserAuthDataByUid(String uid);
    UserAuthDataManagerReturnMsg deleteUserAuthDataByToken(String token);
    UserAuthDataManagerReturnMsg deleteUserAuthDataByDate(String date);
    UserAuthDataManagerReturnMsg deleteUserAuthDataByExpiration(String expiration);
}
